#include <iostream>
#include <stack>
#include <string>
using namespace std;
stack <int> s;
string c;
int main() {
	cin >> c;
	for (int i = 0; i < c.size(); i++) {
		int top1 = 0;
		if (!s.empty()) {
			top1 = s.top();
		}
		if (c[i] == '(') {
			s.push (1);
		} else if (c[i] == ')') {
			s.push (3);
		} else {
			continue;
		}
		if (s.top() != top1 && s.top() % 2 == top1 % 2) {
			if (s.size() >= 2) {
				s.pop();
				s.pop();
			}
		}
	}
	if (s.empty()) {
		cout << "YES" << endl;
	} else {
		cout << "NO" << endl;
	}
	return 0;
}
